マルチクラウド データ ストリーミング

1. はじめに

b412875666fceda8.png

最終更新日: 2022 年 2 月 8 日

マルチクラウド ストリーミングが必要な理由

企業は、複数のクラウド プラットフォームにワークロードを分散することを積極的に検討しています。複数のクラウド プロバイダをビジネスの運用ワークフローに導入することには、次のようなメリットがあるためです。

  • ベンダー ロックイン
  • 事業継続のリスクを軽減する
  • 依存関係と 1 つのテクノロジー スタックへの依存

作成するアプリの概要

この Codelab では、Confluent Cloud を活用して AWS と GCP 間のマルチクラウド データ ストリーミングを設定します。次のことを行います。

  • GCP の Confluent Cloud に専用の Kafka クラスタを設定します。
  • プライベート ネットワークでアクセスできるように、Confluent Cloud と GCP プロジェクトの間に VPC ピアリングを設定します。
  • 両方のハイパースケーラーのリソースが接続できるように、AWS プロジェクトと GCP プロジェクトの間に VPN トンネルを設定します。
  • AWS から Confluent Kafka にアクセスし、Confluent Kafka Cloud を活用して AWS から GCP へのストリーミング パイプラインを設定します。

学習内容

  • Confluent Cloud Kafka と GCP プロジェクトの間に VPC ピアリングを設定する方法。
  • AWS プロジェクトと GCP プロジェクトの間に VPN トンネルを設定する方法。
  • AWS プロジェクトから GCP でホストされている Confluent Cloud にアクセスする方法。

この Codelab では、マルチクラウド データ ストリーミングの構築に焦点を当てます。関連のない概念やコードブロックについては詳しく触れず、コードはコピーして貼るだけの状態で提供されています。

必要なもの

  • AWS プロジェクトへのアクセス。
  • GCP プロジェクトへのアクセス。
  • GCP と AWS Cloud の経験。
  • GCP Marketplace の Confluent Kafka サブスクリプション。

2. 設定方法

AWS と GCP 間の VPN 接続を設定する

  • このデモでは、GCP のデフォルト VPC(asia-southeast1)と AWS の ng-vpc-103-mum(ap-south1)を使用します。

eac371e8af07fc0c.png

c76e9c670e4f8cca.png

  • AWS で、カスタマー ゲートウェイと仮想プライベート ゲートウェイ(VPG)を作成します。VPG を AWS VPC に接続します。

55a075a6b951b5df.png

fe23f4315e9369ec.png

  • AWS でサイト間 VPN 接続を作成します。

4c59066457f3ff9.png a2dde7c3e7cf82e9.png

  • AWS で作成したトンネルの構成ファイルをダウンロードします。選択
  • ベンダー : Generic
  • プラットフォーム : 汎用
  • ソフトウェア : ベンダーに依存しない
  • Ike バージョン : Ikev2
  • GCP で VPN ゲートウェイと VPN トンネルを作成します。

8d167a30913a46e1.png

ダウンロードした AWS 構成ファイルから、両方のトンネルの IP アドレスと Ikev2 鍵を指定します。

  • 完了すると、トンネルは AWS と GCP で UP および Running になります。

baca51d151d7c40.png

ceefee82994ef2d4.png

これでトンネルの設定は完了です。

  • Confluent Cloud の構成に使用する CIDR ブロックを選択します。これを AWS の静的ルートとして VPN トンネルに追加します。

219fa91dc84bd751.png

GCP Marketplace の Confluent Kafka

  • GCP Marketplace から Confluent Kafka をサブスクライブします。

380b8221724e91d7.png

  • Confluent Cloud にログインして専用クラスタを作成する

54611bb3ba91a867.png

7e3b9fec07478fc5.png

  • ピアリング用に GCP プロジェクト ID と VPC ネットワークの詳細を指定します。

544ea2152de6d447.png

  • 提供された Confluent Cloud クラスタ ネットワークの詳細を使用して、GCP エンドで VPC ピアリングを完了します。

a791c93028f46a10.png

  • Confluent Cloud クラスタがアクティブになり、GCP とピアリングされました。

c9ebd43fab4a8db6.png

  • GCP から Confluent クラスタへの接続をテストします。
  • GCE インスタンスをプロビジョニングして Python3 をインストールします。
  • Confluent Cloud で Python クライアント キーを生成する

969ce69a57fda7db.png

  • GCP インスタンスからテスト スクリプト「producer.py」を実行します。

aaede917f462b5b9.png

  • 次に、AWS インスタンスにコードベースの例をダウンロードし、「producer.py」スクリプトを実行して、GCP から Confluent Cloud へのハイブリッド接続をテストします。

94da3d8c20f8b234.png

3. 完了

お疲れさまでした。AWS と GCP の間でマルチクラウド クロスリージョン Confluent Kafka ストリーミング プラットフォームを正常に構築できました。

役立つ Codelab**?**

以下の Codelab をご覧ください。

参考資料